/*--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------*/
// pstatbar.hpp - Status bar class definition.
//
// Author: Kenneth G. Maxwell
//
// Copyright (c) 1997-2000 Swell Software 
//              All Rights Reserved.
//
// Unauthorized redistribution of this source code, in whole or part,
// without the express written permission of Swell Software
// is strictly prohibited.
//
// Notes:
//
/*--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------*/

#ifndef _PEGSTATUSBAR_
#define _PEGSTATUSBAR_


class PegStatusBar : public PegTextThing
{
    public:
        PegStatusBar();
        virtual ~PegStatusBar();

        virtual PegPrompt *AddTextField(PEGINT Width, PEGUSHORT Id,
                                        PEGUINT StringId = 0);

        virtual PegPrompt *AddTextField(const PEGCHAR *pText,
            PEGINT Width, PEGUSHORT Id);

        virtual void Draw(const PegRect &Invalid);
        PegPrompt *GetPrompt(PEGUINT Id);
        virtual PEGINT Message(const PegMessage &Mesg);

        virtual void SetFont(PEGUINT FontIndex);
        virtual void SetTextField(PEGUSHORT Id, PEGUINT StringId);
        virtual void SetTextField(PEGUSHORT Id, const PEGCHAR *pText);

    protected:

        void CheckDrawDragMap(PegThing *Check = NULL);

        PegPrompt *NewTextField(PEGINT Width,  PEGUSHORT Id,
            PEGUINT StringId, const PEGCHAR *pText);

        virtual void SizeToParent(void);

        PegPrompt *mpLastPrompt;
        PEGBOOL    mShowPointer;
};


#endif

